/*
 ============================================================================
 Name		: SAApplication.h
 Author	  : 
 Copyright   : Copyright (c)
 All rights reserved.
 Description : Declares main application class.
 ============================================================================
 */

#ifndef __SAAPPLICATION_H__
#define __SAAPPLICATION_H__

// INCLUDES
#include <aknapp.h>
#include "SA.hrh"

// UID for the application;
// this should correspond to the uid defined in the mmp file
const TUid KUidSAApp = { _UID3 };

// CLASS DECLARATION

/**
 * CSAApplication application class.
 * Provides factory to create concrete document object.
 * An instance of CSAApplication is the application part of the
 * AVKON application framework for the SA example application.
 */
class CSAApplication: public CAknApplication
{
public:
    // Functions from base classes

    /**
     * From CApaApplication, AppDllUid.
     * @return Application's UID (KUidSAApp).
     */
    TUid AppDllUid() const;
    
    CDictionaryStore* OpenIniFileLC(RFs& aFs) const;
    inline const TBool EnableIni() const;
    void EnableIni(TBool aEnableIni);

protected:
    // Functions from base classes

    /**
     * From CApaApplication, CreateDocumentL.
     * Creates CSADocument document object. The returned
     * pointer in not owned by the CSAApplication object.
     * @return A pointer to the created document object.
     */
    CApaDocument* CreateDocumentL();
    
private:
    TBool                   iEnableIni;
};

// Inline functions
inline const TBool CSAApplication::EnableIni() const
{
    return iEnableIni;
};

#endif // __SAAPPLICATION_H__
// End of File
